home *** CD-ROM | disk | FTP | other *** search
Text File | 2000-11-06 | 4.1 KB | 170 lines | [TEXT/CWIE] |
- /*
- File: FrazAPI.r
-
- Fragmalyzer Plug-in Resources
-
- Version: 1.5
- Date: September 2000
-
- Copyright © 1998-2000 Dan Wright, All Rights Reserved.
-
- Bugs?: Please include the version and date of this file.
- Send bug reports to danwr@kagi.com.
- */
-
- #include <ConditionalMacros.r>
-
- #ifndef kFzecVersionCurrent
- #if TARGET_API_MAC_CARBON
- #define kFzecVersionCurrent 2
- #define kFzabVersionCurrent 2
- #else
- #define kFzecVersionCurrent 0
- #define KFzabVersionCurrent 1
- #endif
- #endif
-
- /*
- AppleScript constants
- */
- #define kAEFragmalyzerSuite 'FraZ'
- #define kAEFragmalyzerPluginSuite 'Fzec'
-
- #define cFragment 'Frag'
- #define cSymbol 'symb'
- #define cImportLibrary 'iLib'
-
-
- /*
- Menu IDs
- */
-
- #define kFrazMenuFile 1001
- #define kFrazMenuEdit 1002
- #define kFrazMenuFragmalyze 1003
- #define kFrazMenuSymbol 1004
-
- #define kFrazMenuUserMin 2000
- #define kFrazMenuUserMax 2009
-
- #define kFrazMenuBar 0
-
- /*
- ctEnableFlags
- - indicates conditions under which commands are enabled/disabled
- */
- /* values 0-7 are mutually exclusive */
- #define kctAlways 0 /* always enabled */
- #define kctBrowser 1 /* requires active browser window */
- #define kctFragment 2 /* requires selected fragment */
- #define kctImportLibrary 3 /* requires selected import library */
- #define kctApplication 4 /* requires selected application fragment */
-
- #define kctPluginWindow 7 /* requires active Fzec window */
-
- #define kctImportSymbol 8 /* requires that 1+ import symbols be selected */
- #define kctExportSymbol 16 /* requires that 1+ export symbols be selected */
- #define kctSymbol (kctImportSymbol | kctExportSymbol) /* any kind of symbol will do */
-
- #define kctExactlyOneSymbol 32 /* requires that ONLY 1 symbol be selected */
-
- #define kctDoubleClickAction 0x0080 /* can handle double-clicks */
-
- #define kctWriteAccess 0x0400 /* browser/fragment must be modifiable */
- #define kctProcess 0x0800 /* context browsers only */
- #define kctNeedsCall 0x1000 /* use FindCommandStatus routine */
- #define kctCallEnabled 0x3000 /* call iff command appears to be enabled (according to other conditions) */
-
- /* 0x0100, 0x0200, 0x4000, 0x8000: reserved for future use */
-
- /*
- Miscellaneous
- */
- #define kFzecNoSignature 0
-
- /*
- Fzab/Fzec resource
- */
- #define kFrazBinFormatStrings 1001
- #define kFrazPropertyStrings 1002
- #define kFrazEnumStrings 1003
-
- #define kDisplayDefault 0
- #define kDisplayAsSigned 1
- #define kDisplayAsUnsigned 2
- #define kDisplayAsPad32Hex 4
- #define kDisplayAsPad16Hex 5
- #define kDisplayAsBytes 6
- #define kDisplayAsEnumeration 7
- #define kDisplayCustomUnits 8
-
- #define kNoFlags 0
- #define kFlagsIsBasicProperty 1
-
- /* Flags for Fzab */
- #define kFlagsIsCarbonizedCFM 1
-
- #undef reserved
- type 'Fzab'
- {
- integer = KFzabVersionCurrent;
- integer; /* flags */
- integer; /* version of plugin */
-
- integer = $$CountOf(Formats);
- integer = $$CountOf(Properties);
- integer = $$CountOf(Enumerations);
-
- array Formats {
- literal longint; /* binary format tag*/
- longint reserved;
- };
-
- array Properties {
- literal longint; /* property tag */
- integer; /* display type */
- integer; /* flags */
- };
-
- array Enumerations {
- literal longint; /* enumeration value tag */
- longint reserved;
- };
- };
-
- type 'Fzec'
- {
- integer = kFzecVersionCurrent;
- integer = 0; /* reserved */
- literal longint; /* signature */
- integer = $$Countof(AppleEvents);
- integer = $$CountOf(Properties);
-
- /* custom AppleEvents supported by the plugin */
- array AppleEvents {
- literal longint; /* suite ID */
- literal longint; /* event ID */
- };
-
- /* (a) existing properties for which plugin supports SetData;
- (b) custom properties for which plugin supports GetData and/or SetData [NYI] */
- array Properties {
- literal longint; /* class */
- literal longint; /* property */
- };
-
- /* and now the commands (and menus) */
- array {
- integer = kFzecVersionCurrent;
- integer; /* ctEnableFlags */
- integer; /* xCmdID */
- integer; /* menu */
- char; /* 2: menu key (extended Menu Manager only) */
- byte; /* 2: menu key modifiers */
- integer; /* (reserved: set to 0) */
- pstring [31]; /* name of command (for menu) */
- };
- };
- #define reserved false
-
-